Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Визначення зміни в часі температури металевої заготовки при нагріванні в печі. Варіант №2

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2008
Тип роботи:
Розрахункова робота
Предмет:
Алгоритмізація і програмування
Група:
АВ

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” РОЗРАХУНКОВА РОБОТА №1 З дисципліни : Алгоритмізація і програмування. Визначення зміни в часі температури металевої заготовки при нагріванні в печі. Варіант №2 Завдання : Зміна в часі температури металевої заготовки при нагріванні в печі описується наступною залежністю  де а – початкова температура печі і заготовки; b  – температура печі через годину. При різниці температур Т заготовки і печі метал нагрівається із швидкістю k*T градусів за хвилину, k – коефіцієнт пропорційності. Визначити : за який час t (за скільки хвилин) температура заготовки досягне 150 °С, коли а=50 °С, b=500 °С, k=0,85 хв.‾ ¹; (14,5098 хв.) Розв’язання Зведемо задане рівняння до вигляду :  Виділимо корінь (знайдемо інтервал, в якому знаходиться корінь) заданого рівняння шляхом : табулювання f(t); Програма табулювання функції мовою С //Lab_1V #include<stdio.h> #include<conio.h> #include<math.h> float f(float t) {float a=50,b=500,T=150,k=0.85; return a+(b-a)/60*(t-(1-exp(-k*t))/k)-T;} main() {clrscr(); float t; for(t=0;t<=60;t+=4) printf("\n\nt=%.4f y=%.4f",t,f(t)); getch(); return 0; }   Результати табулювання функції мовою С t y  0.0000 -100.0000  4.0000 -78.5210  8.0000 -48.8137  12.0000 -18.8232  16.0000 11.1765  20.0000 41.1765  24.0000 71.1765  28.0000 101.1765  32.0000 131.1765  36.0000 161.1765  40.0000 191.1765  44.0000 221.1765  48.0000 251.1765  52.0000 281.1765  56.0000 311.1765  60.0000 341.1765   Табулювання функції в середовищі MATLAB Файл f_bvg1 в якому описана функція f(t) function y=f_bvg1(t); a=50;b=500;k=0.85;T=150; y=a+(b-a)/60*(t-(1-exp(-k*t))/k)-T;   Програма табулювання функції f(t) в середовищі MATLAB %bvglab clc;clear; a=0;b=60; t=[a:(b-a)/1e2:b]; y=f_bvg1(t); t_zero=fzero('f_bvg1',(a+b)/2); plot(t,y,'k-',t_zero,0,'r*');grid; xlabel('t,XB'); ylabel('T(t),C');   Графік табулювання функції f(t) в середовищі MATLAB  Висновок : в результаті табулювання функції і побудови графіка видно, що корінь нелінійного рівняння знаходиться на інтервалі [12;16 ]. 1) Метод половинного ділення Блок-схема алгоритму  Програма мовою С #include<stdio.h> #include<conio.h> #include<math.h> float f(float t) {float a=50,b=500,T=150,k=0.85; return (a+(b-a)/60*(t-(1-exp(-k*t))/k)-T); } main () float t0,a=12,b=16,eps=1e-4,k=0; a: t0=(a+b)/2; if(f(a)*f(t0)>0) a=t0; else b=t0; if(fabs(a-b)>eps) goto a; printf ("t0=%f eps=%f k=%f",t0,eps,k); getch(); return 0; }   Результат виконання програми t0 k ε  14.5098 16   14.50980 19   14.509799 22    Наближення кореня в середовищі MATLAB %Metod polovunnoho dilennya a=12;b=16;k=0;eps=1e-4; t0=(a+b)/2; while abs(a-b)>eps if f_bvg1(a)*f_bvg1(t0)>0 a=x0; else b=x0; end; t0=(a+b)/2; k=k+1; end; format long; disp('a to b k') disp([a t0 b k])   Результат виконання програми t0 k ε  14.5098 16   14.50980 19   14.509799 22    2) Mетод простих ітерацій У цьому методі рівняння f(t) замінюється еквівалентним йому рівнянням t=φ(t).      Q = 7.4999 → k = 4      q = 0.87499 Блок-схема алгоритму  Програма мовою С #include<stdio.h> #include<conio.h> #include<math.h> float f(float t) {float a=50,b=500,T=150,k=0.85; return (a+(b-a)/60*(t-(1-exp(-k*t))/k)-T); } main() {float t0=14,t,eps=1e-4,q=0.8749; int i=0; clrscr(); a: t=t0-f(t0)/4; if(fabs(t-t0)>eps*(1-q)/q) {t0=t; i++; goto a; } printf(" t=%.4f i=%d",t,i); getch()...
Антиботан аватар за замовчуванням

12.02.2013 18:02

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини